USE [BABELE_SISM_SVIL]
GO
/****** Object:  StoredProcedure [dbo].[SB_BL_PPRI_Carica]    Script Date: 10/14/2013 14:25:03 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Nome:		SB_BL_PPRI_Carica
-- Scopo:		Carica i dati relativi al PPRI di un paziente 
-- Input:		@idcontatto = id del contatto
-- Return:		
-- Ultima mod:	05/09/2010 ECarretta
-- Test:		ECarretta
-- =============================================

ALTER PROCEDURE [dbo].[SB_BL_PPRI_Carica]	
	@idcontatto as int
AS
BEGIN
	
	SET NOCOUNT ON;
	DECLARE @idpaziente int
	SET @idpaziente = (SELECT ID_PAZLOC FROM dbo.T_CONTATTI WHERE ID_CONTATTO = @idcontatto)
	

	IF EXISTS (SELECT P.ID_PAZ_PPRI FROM dbo.T_PAZ_PPRI P WHERE P.ID_CONTATTO = @idcontatto)
	BEGIN	
		SELECT	
			P.ID_PAZ_PPRI AS ID,
			P.ID_PAZ_PPRI AS ID_PPRI,
			P.ID_CONTATTO AS IDCONTATTO,
			P.ID_PAZIENTE AS IDPAZIENTE,
			
			(SELECT LEFT(U.NOME,1) + '. ' + U.COGNOME as FIRMA, ID_CTRL_ACC_UTENTE AS IDUTENTE 
				FROM  dbo.CTRL_ACC_UTENTI U WHERE U.ID_CTRL_ACC_UTENTE = P.ID_FIRMA
				FOR XML PATH('FIRMA'),TYPE),
			
			P.DATAORA AS DATAORA,

			P.ANAMNESI,
			P.BISOGNI,
			P.BISOGNIALTRI AS BISOGNI_ALTRI,
			P.CARICO,
			P.COD_DIS,
			P.DIAPRINC,
			P.DIASEC1,
			P.DIASEC2,
			P.DIASEC3,
			P.ESAMEFUNZ AS ESAME_FUNZ,
			P.GFV,
			P.INDICEASIA AS INDICE_ASIA,
			P.INDICEBARTHEL AS INDICE_BARTHEL,
			P.INDICEFIM AS INDICE_FIM,
			P.INDICEGCS AS INDICE_GCS,
			P.INDICELCF INDICE_LCF,
			P.RIABIL,
			P.RIABILTOLL,

			P.PROGAUSILI AS PROG_AUSILI,
			P.PROGPROGETTO AS PROG_PROGETTO,
			P.PROGDURATA AS PROG_DURATA,
			P.PROGGRADIENTE AS PROG_GRADIENTE,
			P.PROGSETTING AS PROG_SETTING,
			P.PROGSETTINGCAMBIO AS PROG_SETTING_CAMBIO,
			P.PROGSINTESI AS PROG_SINTESI,
			P.PROGSINTESI_ALTRO AS PROG_SINTESI_ALTRO,

			P.ID_PAZ_STATO_DIM,
			(
			SELECT 
				S.ID_PAZ_STATO_DIM AS ID,
				S.ID_PAZ_STATO_DIM AS ID_STATO_PAZ_DIM,
				S.ID_CONTATTO,
				S.ID_PAZIENTE,
				
				(SELECT LEFT(U.NOME,1) + '. ' + U.COGNOME as FIRMA, ID_CTRL_ACC_UTENTE AS IDUTENTE 
				FROM  dbo.CTRL_ACC_UTENTI U WHERE U.ID_CTRL_ACC_UTENTE = S.ID_FIRMA
				FOR XML PATH('RILEVAZIONE_FIRMA'),TYPE),

				S.DATAORA AS RILEVAZIONE_DATA,
				S.ALIMASSISTITA AS ALIM_ASSISTITA,
				S.ALIMDISFAGIA AS ALIM_DISFALGIA,
				S.AUSILI,
				S.AUTONALIMENT AS AUTON_ALIMENT,
				S.AUTONBAGNO AS AUTON_BAGNO,
				S.AUTONIGIENE AS AUTON_IGIENE,
				S.AUTONVESTIRSI AUTON_VESTIRSI,
				S.AUTONALTRO AS AUTON_ALTRO,
				S.BISASSIST AS BIS_ASSIST,
				S.BISCLIINT AS BIS_CLI_INT,
				S.CATVESCICALE AS CAT_VESCICALE,
				S.COLLABORAZIONE,
				S.COMUNICAZIONE,
				S.CONTRRETTO AS CONT_RETTO,
				S.CONTRVESCICA AS CONT_VESCICA,
				S.CONTRTRONCO AS CONTR_TRONCO,
				S.DEAMBULAZIONE,
				S.DECUBITI,
				S.DIALISI,
				S.PROBSOCIALI,
				S.RESPIRAZIONE,
				S.SENSIBILITA,
				S.SENSIBILITALIVELMID AS SENSIBILITA_LIVEL_MID,
				S.SENSIBILITAALTRO AS SENSIBILITA_ALTRO,
				S.TONOMUSCOLARE AS TONO_MUSCOLARE,
				S.TRASFBAGNO AS TRASF_BAGNO,
				S.TRASFSCALE AS TRASF_SCALE,
				S.TRASFSEDIALETTO AS TRASF_SEDIA_LETTO,
				S.TURBECOMPORTAMENTO AS TURBE_COMPORTAMENTO,
				S.VIGILANZA
			FROM dbo.T_PAZ_STATO_DIM S
			WHERE S.ID_CONTATTO = P.ID_CONTATTO
			FOR XML PATH('STATO_ALLA_DIMISSIONE'),TYPE
			)
		FROM 
			dbo.T_PAZ_PPRI P	
		WHERE
			P.ID_CONTATTO = @idcontatto
		FOR XML PATH('PPRI'), TYPE	
	END
	ELSE
	BEGIN
		SELECT
			0 AS ID,	
			0 AS ID_PPRI,
			@idcontatto AS ID_CONTATTO,
			@idpaziente AS ID_PAZIENTE,
			(
			SELECT 
				0 AS ID_PAZ_STATO_DIM,
				@idcontatto AS ID_CONTATTO,
				@idpaziente AS ID_PAZIENTE
			FOR XML PATH('STATO_ALLA_DIMISSIONE'),TYPE
			)
		FOR XML PATH('PPRI'), TYPE	
	END
			
END
